package com.yunhe.common.model.company;

import com.yunhe.common.model.office.Office;

import java.util.List;

/**
 * 企业对象
 * @author liuronglei
 */
public class Company implements Comparable<Company> {

    /*************************基础信息*************************/
    private Long id;

    private Long code;

    private String name;

    private String abbreviation;

    /**企业全称*/
    private String title;

    private String sn;

    /**绑定的房源*/
    private List<Office> offices;

    /**归属园区(真实园区)*/
    private String stationTitle;

    /**归属园区ID(真实园区ID)*/
    private Long readStationId;

    /**面积*/
    private double area;

    /**入驻时间*/
    private String leaseTime;

    /**缴费日期*/
    private String paymentDate;

    /**租赁期限*/
    private String leaseDueTime;

    /**租赁期限开始*/
    private String leaseStartTime;

    /**租赁期限结束*/
    private String leaseEndTime;


    /**************************工商信息***************************/
    /**统一社会信用代码*/
    private String unifiedSocialCreditCode;

    /**企业法人名称*/
    private String legalPerson;

    private String areaAddress;

    private String areaAddressTitle;

    /**企业注册地址*/
    private String companyRegisteredAddress;

    /**企业行政区域*/
    private String companyAdministrativeRegions;

    /**注册资本*/
    private String registeredCapital;

    /**企业类型*/
    private String typeOfEnterprise;

    /**营业期限*/
    private String operatingPeriod;

    /**注册时间*/
    private String registrationTime;

    /***********************联系方式*****************************/

    /**联系人*/
    private String chargePerson;

    /**联系方式*/
    private String chargePersonPhone;

    /**联系人职务*/
    private String personPosition;

    /**邮箱*/
    private String emailAddress;

    /***********************功能性字段*****************************/

    /**项目id*/
    private Long intentionId;

    /**企业状态 0在园 1离园*/
    private String companyStatus;

    /**创建时间*/
    private String creatTime;

    /**更新时间*/
    private String updateTime;


    @Override
    public int compareTo(Company o) {
        if (this.sn == null) {
            return -1;
        } else if (o == null || o.getSn() == null) {
            return 1;
        }
        return this.sn.compareTo(o.getSn());
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getCode() {
        return code;
    }

    public void setCode(Long code) {
        this.code = code;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAbbreviation() {
        return abbreviation;
    }

    public void setAbbreviation(String abbreviation) {
        this.abbreviation = abbreviation;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getSn() {
        return sn;
    }

    public void setSn(String sn) {
        this.sn = sn;
    }

    public List<Office> getOffices() {
        return offices;
    }

    public void setOffices(List<Office> offices) {
        this.offices = offices;
    }

    public String getStationTitle() {
        return stationTitle;
    }

    public void setStationTitle(String stationTitle) {
        this.stationTitle = stationTitle;
    }

    public Long getReadStationId() {
        return readStationId;
    }

    public void setReadStationId(Long readStationId) {
        this.readStationId = readStationId;
    }

    public double getArea() {
        return area;
    }

    public void setArea(double area) {
        this.area = area;
    }

    public String getLeaseTime() {
        return leaseTime;
    }

    public void setLeaseTime(String leaseTime) {
        this.leaseTime = leaseTime;
    }

    public String getPaymentDate() {
        return paymentDate;
    }

    public void setPaymentDate(String paymentDate) {
        this.paymentDate = paymentDate;
    }

    public String getLeaseDueTime() {
        return leaseDueTime;
    }

    public void setLeaseDueTime(String leaseDueTime) {
        this.leaseDueTime = leaseDueTime;
    }

    public String getLeaseStartTime() {
        return leaseStartTime;
    }

    public void setLeaseStartTime(String leaseStartTime) {
        this.leaseStartTime = leaseStartTime;
    }

    public String getLeaseEndTime() {
        return leaseEndTime;
    }

    public void setLeaseEndTime(String leaseEndTime) {
        this.leaseEndTime = leaseEndTime;
    }

    public String getUnifiedSocialCreditCode() {
        return unifiedSocialCreditCode;
    }

    public void setUnifiedSocialCreditCode(String unifiedSocialCreditCode) {
        this.unifiedSocialCreditCode = unifiedSocialCreditCode;
    }

    public String getLegalPerson() {
        return legalPerson;
    }

    public void setLegalPerson(String legalPerson) {
        this.legalPerson = legalPerson;
    }

    public String getAreaAddress() {
        return areaAddress;
    }

    public void setAreaAddress(String areaAddress) {
        this.areaAddress = areaAddress;
    }

    public String getAreaAddressTitle() {
        return areaAddressTitle;
    }

    public void setAreaAddressTitle(String areaAddressTitle) {
        this.areaAddressTitle = areaAddressTitle;
    }

    public String getCompanyRegisteredAddress() {
        return companyRegisteredAddress;
    }

    public void setCompanyRegisteredAddress(String companyRegisteredAddress) {
        this.companyRegisteredAddress = companyRegisteredAddress;
    }

    public String getCompanyAdministrativeRegions() {
        return companyAdministrativeRegions;
    }

    public void setCompanyAdministrativeRegions(String companyAdministrativeRegions) {
        this.companyAdministrativeRegions = companyAdministrativeRegions;
    }

    public String getRegisteredCapital() {
        return registeredCapital;
    }

    public void setRegisteredCapital(String registeredCapital) {
        this.registeredCapital = registeredCapital;
    }

    public String getTypeOfEnterprise() {
        return typeOfEnterprise;
    }

    public void setTypeOfEnterprise(String typeOfEnterprise) {
        this.typeOfEnterprise = typeOfEnterprise;
    }

    public String getOperatingPeriod() {
        return operatingPeriod;
    }

    public void setOperatingPeriod(String operatingPeriod) {
        this.operatingPeriod = operatingPeriod;
    }

    public String getRegistrationTime() {
        return registrationTime;
    }

    public void setRegistrationTime(String registrationTime) {
        this.registrationTime = registrationTime;
    }

    public String getChargePerson() {
        return chargePerson;
    }

    public void setChargePerson(String chargePerson) {
        this.chargePerson = chargePerson;
    }

    public String getChargePersonPhone() {
        return chargePersonPhone;
    }

    public void setChargePersonPhone(String chargePersonPhone) {
        this.chargePersonPhone = chargePersonPhone;
    }

    public String getPersonPosition() {
        return personPosition;
    }

    public void setPersonPosition(String personPosition) {
        this.personPosition = personPosition;
    }

    public String getEmailAddress() {
        return emailAddress;
    }

    public void setEmailAddress(String emailAddress) {
        this.emailAddress = emailAddress;
    }

    public Long getIntentionId() {
        return intentionId;
    }

    public void setIntentionId(Long intentionId) {
        this.intentionId = intentionId;
    }

    public String getCompanyStatus() {
        return companyStatus;
    }

    public void setCompanyStatus(String companyStatus) {
        this.companyStatus = companyStatus;
    }

    public String getCreatTime() {
        return creatTime;
    }

    public void setCreatTime(String creatTime) {
        this.creatTime = creatTime;
    }

    public String getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(String updateTime) {
        this.updateTime = updateTime;
    }
}
